package com.kgame5.xtank3d{

/**
 * @author kk
 * 枚举类型，存储的都是一些常量
 */
public class GameEnum {
	//大类别，障碍物，坦克，炮弹，道具
	public static const 
		CATEID_BLOCK:int=1,
		CATEID_GROUND:int=2,
		CATEID_TANK:int=3,
		CATEID_SHOT:int=4,
		CATEID_ITEM:int=5;
	
	public static const
		BU_TYPE_TANK:int=1,
		BU_TYPE_CART:int=2;
	
	//玩家的队伍号，这个很有用，用来编队的，决定谁和谁是一伙的~
	public static const 
		TEAM_A:int=1,
		TEAM_B:int=2;

	//爆炸的类型
	public static const
		BLAST_TYPE_TANKDIE:int=-99,//坦克可死亡，地上一地血液，-99表示是客户端使用的
		
		BLAST_TYPE_NULL:int=0,//无爆炸
		
		BLAST_TYPE_NORMAL:int=1,
		BLAST_TYPE_POISON:int=2,
		BLAST_TYPE_HAMMER:int=3,
		BLAST_TYPE_BANANA:int=4;
	//这些炮弹类型，主要是用来显示烟雾用的
	public static const
		SHOTTYPE_DEFAULT_MID:int=41001,//常规坦克默认炮弹
		
		//SHOTTYPE_SHARP:int=41002,//穿甲弹
		
		SHOTTYPE_SPRAY:int=41003,//散弹，4个方向散发
		SHOTTYPE_POISON:int=41004,//毒药瓶子
		
		SHOTTYPE_MISSILE:int=42001,//导弹
		SHOTTYPE_HAMMER:int=42002,//锤子
		
		SHOTTYPE_MINE:int=43001,//地雷
		SHOTTYPE_BANANA:int=43002;//香蕉皮
	//--------------------------
	//！！注意这个是byte，不要超过128
	public static const
		//-
		FSMID_SHOT:int=1,
		
		//flower的主fsm
		FSMID_FLOWER:int=2;
	
	//！！注意这个是byte，不要超过128
	public static const
		
		STATE_SHOT_FLY:int=3,
		
		STATE_FLOWER_BLINK:int=4,//花儿要死前3秒闪烁
		STATE_FLOWER_STAND:int=5;
		

	//坦克
	public static const
		FSMID_MAIN:int=1,
		FSMID_TANK_MOVE:int=8,//移动
		FSMID_TANK_FIRE:int=9,//开炮
		
		FSMID_TANK_TURNBARB:int=10;//旋转炮塔
		
	//！！注意这个是byte，不要超过128
	public static const
		
		STATE_WAIT:int=200,//自己的坦克等待输入命令,这个是在游戏开始和游戏结束后冻结自己坦克而作
		
		STATE_BORN:int=100,
		STATE_HURT:int=101,
		STATE_GOOD:int=102,
		
		STATE_EM_WAIT_BLAST:int=4,//敌兵坦克自爆
		
		STATE_EM_HUNT_MOVE:int=1,
		STATE_EM_THINK_MOVE:int=2,
		STATE_EM_WANDER_MOVE:int=3,
		
		STATE_TANK_STAND:int=20,//静止
		STATE_TANK_MOVE:int=21,//移动
		
		STATE_TANK_WAIT_FIRE:int=22,//待发射
		STATE_TANK_RELOAD_SHOT:int=23,//装弹
		
		
		
		STATE_TANK_BARB_ACTIVE:int=27;//旋转炮塔
		
		
	//------------------------------
	//这个是fsm的是视图通信的事件
	//TODO 以后要整理一下名字
	public static const	
		
		MOVE:String="MOVE",
		
//		START_BORN:String=3,
//		END_BORN:String=4,
		
		START_DIE:String="START_DIE",
		END_DIE:String="END_DIE",
		
//		START_HURT:String=7,
//		END_HURT:String=8,
//		
//		START_POISON:String=9,
//		END_POISON:String=10,
//		
//		START_STUN:String=11,
//		END_STUN:String=12,
		
	
		
		START_RELOAD_SHOT:String="START_RELOAD_SHOT",
		END_RELOAD_SHOT:String="END_RELOAD_SHOT",
		
		START_WAIT_FIRE:String="START_WAIT_FIRE",
		END_WAIT_FIRE:String="END_WAIT_FIRE",
		
		START_FIRE:String="START_FIRE",
		END_FIRE:String="END_FIRE"
		
//		START_FAST_FIRE:String=23,
//		END_FAST_FIRE:String=24,
//		
//		START_SPRAY_FIRE:String=25,
//		END_SPRAY_FIRE:String=26,
//		
//		START_POWER_FIRE:String=27,
//		END_POWER_FIRE:String=28,
//		
//		START_SLIDER:String=13,
//		END_SLIDER:String=14,
//		
//		START_SUICIDE:String=15,
//		END_SUICIDE:String=16,
		
//		UPDATE_RPGVO:String=32,//更新rpgVO的数值
//		
//		UPDATE_SCOREVO:String=40,//更新scoreVO的数值
//		
//		SHOW_WINNER_FLAG:String=41,//杀人王头顶显示标志
//		//--
//		EAT_FLOWER:String=30,
//		
//		ADD_EFFECT:String=33,//添加某个效果，比如增强
//		REMOVE_EFFECT:String=34,//清除某个异常状态
//		
//		ANIM_RUN:String=40,
//		ANIM_STAND:String=41,
//		
//		CHANGEFORM_MAN:String=42,//变身为普通人
//		CHANGEFORM_SUPER_MAN:String=43,//变身为超级人
		
		//--
//		START_BLINK:String=35 //花儿开始闪烁
		;
		
		//战斗道具的效果,FlyTipEmitter用
	public static const
		OP_METHOD_HURT_CRI:int=-2,//会心一击
		OP_METHOD_HURT:int=-1,//坦克受扣除血液
	
		OP_METHOD_FAST_FIRE:int=1,
		OP_METHOD_SPRAY_FIRE:int=2,
		OP_METHOD_POWER_FIRE:int=3,
		OP_METHOD_SUICIDE:int=4,
		
		OP_METHOD_ADD_HP:int=5,//加HP
		OP_METHOD_ADD_ATK:int=6,//加ATK
		OP_METHOD_ADD_DEF:int=7,//加DEF
		OP_METHOD_ADD_MOV:int=8;//加MOV
		
	//坦克fms和comp之间的通信
	public static const
		//注意这两个会操作其他的fsm进入冻结或者激活状态
		MAIN_GOOD_ENTER:String="MAIN_GOOD_ENTER",//坦克main状态进入良好状态
		MAIN_GOOD_EXIT:String="MAIN_GOOD_EXIT",//坦克变为不可控制
		
		TANK_FIRE:String="TANK_FIRE",//
		
		BORN_START:String="BORN_START",//出生动画
		BORN_END:String="BORN_END",
		HURT_START:String="HURT_START",
		HURT_END:String="HURT_END",
		
		RELOAD_START:String="RELOAD_START",
		RELOAD_END:String="RELOAD_END";
}//end of class
}
